#ifndef STATS_H
#define STATS_H


#include <string>
#include "SettingsManager.h"
#include <boost/shared_ptr.hpp>

enum StatType
{
	STAT_HEALTH,
	STAT_ENERGY,
	STAT_DAMAGE,
	STAT_RANGE,
	STAT_REWARD
};

enum RewardType
{
	REW_HEALTH,
	REW_ENERGY,
	REW_SKILL,
	REW_EXP
};

class Stats
{
public:
	Stats();
	Stats(boost::shared_ptr<SettingsManager> sm);
	~Stats(void);

	SettingsManager* getSettings();
	float getReward(RewardType type);
	float getStat(StatType type);
	void setStat(StatType type, float value);

private:
	bool readStatsFromXML(boost::shared_ptr<SettingsManager> sm);
	void initStats();

	//int setReward(RewardType type, int value);

	boost::shared_ptr<SettingsManager> mpSM;
	float mHealth, mEnergy, mDamage, mRange;
	float mR_health, mR_energy, mR_skill, mR_exp;
};
#endif